<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        #box{
            width: 200px;
            height: 200px;
            border: 1px solid transparent;
            background-color: #6ff;
            margin: 50px;
        }
        .active{
            background-color: pink !important;
            border-color: red !important;
        }
    </style>
</head>
<body>
    <div id="box" class="one two three"></div>
</body>
<script>
    var box = document.getElementById("box");

    console.dir(box);

    // className  class名(整体)  => 单class名 用className方便
    // classList  class名列表    => 操作多class名  用classList比较方便

    // className  获取和设置class名(整体)
    // console.log(box.className);
    // box.className = "demo";

    // 应用: 判断class名的列表 是否存在two  => 自己写比较麻烦
    // console.log(box.className);
    // console.log(box.className.indexOf("two")!=-1);  //字符串的indexOf 不准确
    // console.log(box.className.split(" ").indexOf("two")!=-1);  //字符串 => 数组

    // classList 获取元素class名的集合(class列表) => 伪数组

    // classList 的方法
    //    add()      向匹配的元素中追加一个或多个class名(多个class名 逗号分隔)
    //    remove()   删除匹配的元素中一个或多个class名(多个class名 逗号分隔)
    //    replace()  将原有的class名替换为新的class名
    //    contains()  判断元素中是否存在某个class名  存在=> true 不存在=>false
    //    toggle()    判断元素中是否存在某个class名  有就删除  没有就新增

    console.log(box.classList);

    box.classList.add("a","b","c")
    // box.classList.add("a","c")
    
    box.classList.remove("a","c");

    box.classList.replace("two","second");

    //  console.log( box.classList.contains("two"));
    //  console.log( box.classList.contains("second"));

    // box.classList.toggle("hello");
    // box.classList.toggle("hello");


    box.onclick = function(){
        box.classList.toggle("active");
    }

    console.log(box);



</script>
</html>